package com.xyoto.community.service;

import com.xyoto.community.entity.main.Topic;

/**
 * @author coderFu
 * @create 2021/11/22
 * 话题缓存相关内容
 */
public interface TopicCacheService {


    /**
     * 根据话题id判断该话题能否发布匿名动态
     * @param topicId
     * @return
     */
    boolean judgeTopicDynamicEnableAnonymous(Integer topicId);

    /**
     * 更新话题可以匿名的话题缓存信息
     * @param topicId
     * @return
     */
    boolean updateTopicDynamicAnonymousCache(Integer topicId);

    /**
     * 从缓存中获取话题相关信息
     * @param topicId
     * @return
     */
    Topic getTopicMessageFromCache(Integer topicId);

    /**
     * 新增话题到缓存中
     * @param topicId
     */
    void addTopicToCache(Topic topicId);

    /**
     * 根据话题id删除话题缓存中存储到信息
     * @param topicId
     */
    void deleteTopicFromCache(Integer topicId);

    /**
     * 更新缓存中话题的信息
     * @param topic
     */
    void updateTopicFromCache(Topic topic);



}
